package com.mapper;
import com.github.pagehelper.Page;
import com.pojo.User;
import com.pojo.UserExample;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {
    //根据用户名称查询用户信息及携带的角色和权限
    User queryByUserNameAndRoleAndMenu(String name);
    /*<!--查询带条件-->分页*/
    Page<User> selectByQueryString(String queryString);

    //查询该用户对应的角色id
    Integer [] queryByRoleId(Integer GroupId);

    //第三方表插入数据
    void addUserAndRole(@Param("UserId") Integer UserId,@Param("RoleIds") Integer [] RoleIds);

    //删除第三方表该用户对应的角色
    void deleteByUser(Integer UserId);

    //查询有没有角色引用该用户
    Integer queryByUserId(Integer UserId);


    long countByExample(UserExample example);

    int deleteByExample(UserExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(User record);

    int insertSelective(User record);

    List<User> selectByExample(UserExample example);

    User selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") User record, @Param("example") UserExample example);

    int updateByExample(@Param("record") User record, @Param("example") UserExample example);

    int updateByPrimaryKeySelective(User record);

    int updateByPrimaryKey(User record);
}